# 定义发邮件的任务
from django.conf import settings
from celery_tasks.main import app


@app.task(bind=True,name="send_verify_email",retry_backoff=3)
def send_verify_email(self,to_eamil,verify_url):
    from django.core.mail import send_mail
    subject = "美多商城邮箱验证"
    message = ""
    from_email = settings.EMAIL_HOST_USER
    recipient_list = [to_eamil]
    html_message = "<p>尊敬的用户您好</p>"\
                    "<p>感谢您使用美多商城</p>" \
                   "<p>您的邮箱为：%s请点击此链接激活您的邮箱：</p>" \
                   "<p><a href='%s'>%s</a></p>"%(to_eamil,verify_url,verify_url)

    try:
        send_mail(subject=subject, message=message, from_email=from_email, recipient_list=recipient_list,
                  html_message=html_message)
    except Exception as e:
        #捕获异常,最大参试次数是五次
        raise self.retry(exe=e,max_retries=5)